#ifndef __LIB_AGORA_CLIENT_IENCODER_H__
#define __LIB_AGORA_CLIENT_IENCODER_H__

#include "IBuffer.h"

using namespace AgoraCore;

namespace AgoraClient
{

class IEncoder
{
public:
	virtual ~IEncoder(){};
	virtual void Encode(IBuffer *bufferIn, IBuffer *bufferOut, unsigned short frequence) = 0;
	virtual void Decode(void *data, unsigned int size, IBuffer *bufferOut, unsigned short frequence) = 0;
	virtual void SetQuality(int quality) = 0;
	virtual int GetQuality(int quality) = 0;
};

}

#endif